package com.xuxin.nantai.contract;

import com.xuxin.nantai.bean.BaseBean;
import com.xuxin.nantai.bean.DefaultGroupBean;
import com.xuxin.nantai.bean.FlowLineBean;
import com.xuxin.nantai.bean.GroupBean;
import com.xuxin.nantai.bean.ProducerBean;
import com.xuxin.nantai.presenter.CompleteDetailUpdatePresenter;

/**
 * Created by xu_xin
 * Created on 2020.06.09 0009
 */
public interface CompleteDetailUpdateContract {

    interface Model {

        void getGroups(CompleteDetailUpdatePresenter presenter);


        void getFlowLine(CompleteDetailUpdatePresenter presenter);

        void getProducer(CompleteDetailUpdatePresenter presenter, String cDepCode,String LineName);

        void update(CompleteDetailUpdatePresenter presenter,
                    String LoginName,
                    String UserName,
                    String Guid,
                    String DID,
                    String HID,
                    String GroupName,
                    String GroupCode,
                    String ProductName,
                    String ProductCode,
                    String DefectDes,
                    String DefectNum);

        void getDefaultGroup(CompleteDetailUpdatePresenter presenter, String LoginName);
    }

    interface View extends BaseContract.view {

        void onSuccess(GroupBean groupBean);

        void onSuccess(FlowLineBean flowLineBean);

        void onSuccess(ProducerBean producerBean);

        void onSuccess(DefaultGroupBean defaultGroupBean);

        void onSuccess(BaseBean baseBean);
    }

    interface Presenter extends BaseContract.presenter {

        void getGroups();

        void getFlowLine();

        void getProducer(String cDepCode,String LineName);

        void update(String LoginName,
                    String UserName,
                    String Guid,
                    String DID,
                    String HID,
                    String GroupName,
                    String GroupCode,
                    String ProductName,
                    String ProductCode,
                    String DefectDes,
                    String DefectNum);

        void getDefaultGroup(String LoginName);

        void onSuccess(GroupBean groupBean);

        void onSuccess(FlowLineBean flowLineBean);

        void onSuccess(ProducerBean producerBean);

        void onSuccess(DefaultGroupBean defaultGroupBean);

        void onSuccess(BaseBean baseBean);
    }
}